0 REM FLAGS QUIZ 10 IFX=0THENX=1:LOAD"HI-RES TEXT.O",8,1 20 IFX=1THENX=2:LOAD"UNPACKER",8,1 30 IFX=2THENX=3:LOAD"FLAGS.LNK",8,1 35 POKE56,63:CLR 40 : 50 NQ=17:DIM A$(NQ),SN(NQ) 55 TE=50759:XP=2:YP=18 60 FORX=1TONQ:READA$(X):SN(X)=X:NEXT 62 DATA IOWA,NEW MEXICO,MARYLAND,ALASKA,RHODE ISLAND,TEXAS,ALABAMA 64 DATA NORTH CAROLINA,SOUTH CAROLINA,WYOMING,OREGON,NEVADA,COLORADO 66 DATA DISTRICT OF COLUMBIA,CALIFORNIA,INDIANA,MASSACHUSETTS 70 : 75 GOSUB 1000:SYS51459 77 : 80 C=0:W=0:FORX=1TONQ:A=INT(RND(1)*NQ)+1:B=INT(RND(1)*NQ)+1 82 T$=A$(A):A$(A)=A$(B):A$(B)=T$ 83 T=SN(A):SN(A)=SN(B):SN(B)=T 84 NEXTX 90 : 100 FORX=1TONQ 110 GOSUB 1000 : REM BLANK SCREEN 120 GOSUB 2000 : REM PLOT SHP#SN(X) 130 GOSUB 3000 : REM ASK QUESTION 132 FL=0 140 GOSUB 4000 : REM GET/CHECK ANSWER 150 IFFL=1THENGOSUB5000:GOTO110: REM QUIT? 160 NEXT X 170 GOTO 6000 : REM EVALUATION 180 : 1000 REM PLOT BLANK 1010 GOSUB 10000: REM SET STUFF 1020 POKE255,0:SYS51462:AG=3.3 1030 RETURN 1040 : 2000 REM PLOT SHP#X 2010 GOSUB 10000: REM SET STUFF 2020 POKE255,SN(X):POKE253,10:POKE254,2:SYS51462:AG=3.3 2030 RETURN 2040 : 3000 REM ASK QUESTION 3010 SYSTE,"THIS IS THE FLAG OF WHICH STATE?",XP*8,YP*8 3020 SYSTE,"PRESS [F1] TO EXIT",XP*8,(YP+1)*8 3030 RETURN 3040 : 4000 REM GET/CHECK ANSWER 4010 GOSUB 11000 : REM HI-RES INPUT 4011 FORA=3TO5:SYSTE," ",XP*8,(YP+A)*8 4012 NEXT 4015 IFFL=1THEN4100 4020 IF IN$<>A$(X) THEN 4050 4030 SYSTE," CORRECT! ",XP*8,(YP+3)*8:C=C+1:GOTO4100 4050 SYSTE,"INCORRECT! THE CORRECT STATE IS: ",XP*8,(YP+3)*8:W=W+1 4051 MM=20-LEN(A$(X))/2-4 4052 SYSTE,A$(X),(XP+MM)*8,(YP+4)*8:POKE198,. 4053 REM SYSTE,"THE CORRECT STATE IS: "+A$(X),(XP+MM)*8,(YP+4)*8:POKE198,. 4100 SYSTE,"PRESS ANY KEY TO CONTINUE...",(XP+3)*8,(YP+5)*8 4105 GETA$:IFA$=""THEN4105 4110 RETURN 5000 REM QUIT? 5010 GOSUB 1000 5020 SYSTE,"ARE YOU SURE YOU WANT TO QUIT [Y/N]",XP*8,YP*8 5030 POKE198,0:WAIT198,1:GETA$ 5040 IFA$<>"Y"ANDA$<>"N"ANDA$<>"[217]"ANDA$<>"[206]"THEN5030 5050 IFA$="Y"ORA$="[217]"THEN 60000 5060 RETURN 5070 : 6000 REM EVALUATION 6010 GOSUB 1000 6020 S$="OUT OF"+STR$(NQ)+" ASKED, YOU GOT"+STR$(C)+" CORRECT." 6022 SYSTE,S$,XP*8,(YP-9)*8 6030 PC=INT((C/NQ)*100) 6040 S$="THIS AVERAGES OUT TO"+STR$(PC)+"% CORRECT." 6042 SYSTE,S$,XP*8,(YP-8)*8 6050 IFPC>=90 THENS$="THIS IS AN EXCELLENT SCORE.":GOTO6100 6060 IFPC>=80 THENS$="THIS IS AN ABOVE AVERAGE SCORE.":GOTO6100 6070 IFPC>=70 THENS$="THIS IS AN AVERAGE SCORE.":GOTO6100 6080 IFPC>=60 THENS$="THIS IS A BELOW AVERAGE SCORE.":GOTO6100 6090 S$="THIS IS A VERY POOR SCORE." 6100 SYSTE,S$,XP*8,(YP-7)*8 6105 SYSTE,"PRESS ANY KEY",(XP+10)*8,YP*8 6107 POKE198,0:WAIT198,1:POKE198,0 6110 : 7000 REM PLAY AGAIN 7010 GOSUB 1000 7020 SYSTE,"PRESS [RETURN] TO RETURN TO LOADSTAR",XP*8,(YP-5)*8 7022 SYSTE,"ANY OTHER KEY TO PLAY AGAIN",(XP+5)*8,(YP-4)*8 7030 POKE198,0:WAIT198,1:GETAG$ 7040 IFAG$=CHR$(13)THEN60000 7045 GOTO80 7050 : 10000 REM SET STUFF 10010 POKE249,224:POKE250,204 10020 POKE251,0:POKE252,64 10030 POKE253,0:POKE254,0 10040 RETURN 10050 : 11000 REM HI-RES INPUT 11010 A$="" 11020 XI=2:YI=23 11030 GETK$:IFK$<>""THEN11070 11040 IFCR$="["THENCR$="]":GOTO11060 11050 CR$="[" 11060 SYS50759,CR$,XI*8,YI*8:GOTO11030 11070 IFK$=CHR$(13)THEN11150 11072 IFK$="[133]"THENFL=1:GOTO11150 11080 IFK$<>"[157]"ANDK$<>CHR$(20)THEN11100 11090 IFXI>2THENXI=XI-1:SYS50759," ",XI*8,YI*8:A$=LEFT$(A$,LEN(A$)-1):GOTO11030 11100 IFK$>="[193]"ANDK$<="[218]"THENK$=CHR$(ASC(K$)-128) 11105 IF(K$>"Z"ORK$<"A")ANDK$<>" "ANDK$<>"."THEN11030 11110 IFXI=38THEN11030 11120 SYS50759,K$,XI*8,YI*8:XI=XI+1 11130 A$=A$+K$ 11140 GOTO11030 11150 IN$=A$:RETURN 60000 REM QUIT 60010 SYS51459:PRINT"[147]" 60020 OPEN15,8,15,"R0:HELLO CONNECT=HELLO CONNECT":INPUT#15,ER:CLOSE15 60030 IFER<>63THENPOKE56,160:CLR:END 60040 POKE56,160:CLR:LOAD"HELLO CONNECT",8 60050 END